package nidea;
import java.sql.*;

 public class DBConexion {
    protected ResultSet rsRegistros;
    public Statement stmt;
    String url = "jdbc:postgresql://localhost:5432/Nidea";
    String usuario = "postgres";
    String contra = "sandra";
   public Connection con;

/**
 * abrirConexion cargar el conector de la base de datos y crea una conexion
 * 
 */
public void abrirConexion(){
        try { 
        Class.forName("org.postgresql.Driver");
	con = DriverManager.getConnection(url,usuario,contra);
System.out.println("Abierta");
}catch(Exception ex){
System.out.println(ex.getMessage());
}
}

/**
 * getRS recibe una cadena con la cosulta que se requiere hacer
 * @param query
 * @return un objeto ResultSet con los datos obtenidos de la consulta 
 * o un mensaje de excepcion que  de por que no pudo realizar la consulta
 */
public ResultSet getRS(String query){
        this.abrirConexion();
        
try {
        this.stmt = this.con.createStatement();
      
this.rsRegistros = stmt.executeQuery(query);
	} catch (Exception ex) {
          System.out.println(ex.getMessage());  
        }
     return this.rsRegistros;
    }
    
/**
 * ExecutarSentencia recibe una cadena con la sentencia que se requiere executar puede
 * ser un update, un delete o un insert
 * @param sentencia
 * regresa un mensaje de excepcion que de por que no pudo ejecutar la sentencia
 */
public void ExecutarSentencia(String sentencia){
            this.abrirConexion();
        try {
            this.stmt = this.con.createStatement();
		stmt.execute(sentencia);
                    } catch (Exception ex) {
            System.out.println("Error en ejecucion de sentencia SQL: " + ex.getMessage());
                 }
    }
/**
 * cerrarConexion cierra la conexion e imprime en la salida estandar si esta disponible un mensaje de cerrado
 * o un mensaje de error si no se pudo cerrar la conexion
 */
public void cerrarConexion() {
        try {
            con.close();
	System.out.println("cerrada");
        } catch (Exception ex) {
            System.out.println("Error al intentar cerrar la Conexion: " + ex.getMessage());
        }
    }
}